home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / g_man / cat3 / standard / ilbuffer.z / ilbuffer
Encoding:
Text File  |  2002-10-03  |  4.2 KB  |  133 lines

  1.  
  2.  
  3.  
  4. iiiillllbbbbuuuuffffffffeeeerrrr((((3333GGGG))))                                                      iiiillllbbbbuuuuffffffffeeeerrrr((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      iiiillllbbbbuuuuffffffffeeeerrrr - allocates framebuffer space to hold temporary image processing
  10.      results
  11.  
  12. CCCC SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  13.      lllloooonnnngggg iiiillllbbbbuuuuffffffffeeeerrrr((((lllloooonnnngggg bbbbuuuuffffffffeeeerrrrssss))))
  14.  
  15. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  16.      _b_u_f_f_e_r_s    the number of 12bit-per-component screen-sized buffers
  17.                 requested
  18.  
  19. FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNN RRRREEEETTTTUUUURRRRNNNN VVVVAAAALLLLUUUUEEEE
  20.      The returned value of the function is the number of buffers granted.
  21.  
  22. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  23.      iiiillllbbbbuuuuffffffffeeeerrrr attempts to allocte buffers 12bit/component color buffers that
  24.      span the entire display surface.
  25.  
  26.      On the RealityEngine, a 12bit/componenent color buffer consumes 3 16bit
  27.      framebuffer words.  A count of the deepest pixel currently used is
  28.      maintained by the Kernel graphics driver. The count is always at least 9
  29.      16bit words, the value required to support 2 12bit/component color
  30.      buffers and a Z/stencil buffer.  The remainder of the pixel depth can be
  31.      allocated to the caller for use as temporary image processing storage.
  32.  
  33.      Any requests by other graphics contexts to use pixel depths that would
  34.      extend into the allocated buffer are denied until the buffer is
  35.      explicitly freed by ilbuffer(0), or the graphics context (window) is
  36.      destroyed. Equivalently, if a graphics context uses features that require
  37.      all of the pixel depth, ilbuffer may return 0. The resource is not
  38.      virtualized and is allocated first come, first served.
  39.  
  40.      For example on a RealityEngine running with small pixel depth, 12 16bit
  41.      framebuffer words available for graphics features. Six are required for
  42.      double color buffers and three for Z/stencil. That leaves three that
  43.      could be alloced for 1 ilbuffer if no other program has allocated a pixel
  44.      depth greater than 9 impwords.
  45.  
  46.      On a RealityEngine running with medium pixel depth, 28 16bit framebuffer
  47.      words are available for graphics features. Nine are required for basic
  48.      double buffered Zbuffer operation, so 19 16bit words are available to be
  49.      allocated as 6 ilbuffers if no other program has allocated a pixel depth
  50.      greater than 9 16bit framebuffer words.
  51.  
  52.      Multiple contexts may allocate the same framebuffer space through calls
  53.      to ilbuffer, but the ilbuffer is not virtualized (context switched), so
  54.      user contexts must synchronize the use of this buffer themselves. The
  55.      ImageLibrary uses this feature, so concurrent use of the ImageLibrary
  56.      when it is using hardware acceleration and user programs that use this
  57.      feature will not necessarily work together correctly. One possibility is
  58.      to cause the ImageLibrary to use only the CPU while user programs use
  59.      this feature.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. iiiillllbbbbuuuuffffffffeeeerrrr((((3333GGGG))))                                                      iiiillllbbbbuuuuffffffffeeeerrrr((((3333GGGG))))
  71.  
  72.  
  73.  
  74.      The ilbuffers can be selected for drawing with ildraw or as a readsource
  75.      for pixel copies or framebuffer to texture loads with readsource
  76.  
  77. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  78.      ildraw, readsource
  79.  
  80. NNNNOOOOTTTTEEEE
  81.      This routine is available only in immediate mode, and only on
  82.      RealityEngine running 5.0.1 or later.
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.